Fix the behaviour of insensitive actions, which was broken when
authorMatthias Clasen <maclas@gmx.de>
Fri, 19 Dec 2003 00:39:10 +0000 (00:39 +0000)
committerMatthias Clasen <matthiasc@src.gnome.org>
Fri, 19 Dec 2003 00:39:10 +0000 (00:39 +0000)
Fri Dec 19 01:35:34 2003  Matthias Clasen  <maclas@gmx.de>

Fix the behaviour of insensitive actions, which was broken
when gtk_action_activate() was changed to pay attention to
sensitivity  (#129557, Christian Persch)

* gtk/gtkaction.h:
* gtk/gtkaction.c (_gtk_action_emit_activate): New auxiliary
function to emit an activate signal without regard to sensitivity.

* gtk/gtkradioaction.c:
* gtk/gtktoggleaction.c: Always use _gtk_action_emit_activate()
instead of gtk_action_activate().

ChangeLog
ChangeLog.pre-2-10
ChangeLog.pre-2-4
ChangeLog.pre-2-6
ChangeLog.pre-2-8
gtk/gtkaction.c
gtk/gtkaction.h
gtk/gtkradioaction.c
gtk/gtktoggleaction.c

index 4508f1ac70cf5086154989e181aacdb64ff657e1..c89b1614d7f7637790cf6e4f43bd8a28c5a013b1 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,17 @@
+Fri Dec 19 01:35:34 2003  Matthias Clasen  <maclas@gmx.de>
+
+       Fix the behaviour of insensitive actions, which was broken
+       when gtk_action_activate() was changed to pay attention to 
+       sensitivity  (#129557, Christian Persch)
+       
+       * gtk/gtkaction.h: 
+       * gtk/gtkaction.c (_gtk_action_emit_activate): New auxiliary
+       function to emit an activate signal without regard to sensitivity.
+
+       * gtk/gtkradioaction.c: 
+       * gtk/gtktoggleaction.c: Always use _gtk_action_emit_activate()
+       instead of gtk_action_activate().
+
 Thu Dec 18 19:13:12 2003  Kristian Rietveld  <kris@gtk.org>
 
        Fixes #110249, reworked patch from Joshua N Pritikin.
index 4508f1ac70cf5086154989e181aacdb64ff657e1..c89b1614d7f7637790cf6e4f43bd8a28c5a013b1 100644 (file)
@@ -1,3 +1,17 @@
+Fri Dec 19 01:35:34 2003  Matthias Clasen  <maclas@gmx.de>
+
+       Fix the behaviour of insensitive actions, which was broken
+       when gtk_action_activate() was changed to pay attention to 
+       sensitivity  (#129557, Christian Persch)
+       
+       * gtk/gtkaction.h: 
+       * gtk/gtkaction.c (_gtk_action_emit_activate): New auxiliary
+       function to emit an activate signal without regard to sensitivity.
+
+       * gtk/gtkradioaction.c: 
+       * gtk/gtktoggleaction.c: Always use _gtk_action_emit_activate()
+       instead of gtk_action_activate().
+
 Thu Dec 18 19:13:12 2003  Kristian Rietveld  <kris@gtk.org>
 
        Fixes #110249, reworked patch from Joshua N Pritikin.
index 4508f1ac70cf5086154989e181aacdb64ff657e1..c89b1614d7f7637790cf6e4f43bd8a28c5a013b1 100644 (file)
@@ -1,3 +1,17 @@
+Fri Dec 19 01:35:34 2003  Matthias Clasen  <maclas@gmx.de>
+
+       Fix the behaviour of insensitive actions, which was broken
+       when gtk_action_activate() was changed to pay attention to 
+       sensitivity  (#129557, Christian Persch)
+       
+       * gtk/gtkaction.h: 
+       * gtk/gtkaction.c (_gtk_action_emit_activate): New auxiliary
+       function to emit an activate signal without regard to sensitivity.
+
+       * gtk/gtkradioaction.c: 
+       * gtk/gtktoggleaction.c: Always use _gtk_action_emit_activate()
+       instead of gtk_action_activate().
+
 Thu Dec 18 19:13:12 2003  Kristian Rietveld  <kris@gtk.org>
 
        Fixes #110249, reworked patch from Joshua N Pritikin.
index 4508f1ac70cf5086154989e181aacdb64ff657e1..c89b1614d7f7637790cf6e4f43bd8a28c5a013b1 100644 (file)
@@ -1,3 +1,17 @@
+Fri Dec 19 01:35:34 2003  Matthias Clasen  <maclas@gmx.de>
+
+       Fix the behaviour of insensitive actions, which was broken
+       when gtk_action_activate() was changed to pay attention to 
+       sensitivity  (#129557, Christian Persch)
+       
+       * gtk/gtkaction.h: 
+       * gtk/gtkaction.c (_gtk_action_emit_activate): New auxiliary
+       function to emit an activate signal without regard to sensitivity.
+
+       * gtk/gtkradioaction.c: 
+       * gtk/gtktoggleaction.c: Always use _gtk_action_emit_activate()
+       instead of gtk_action_activate().
+
 Thu Dec 18 19:13:12 2003  Kristian Rietveld  <kris@gtk.org>
 
        Fixes #110249, reworked patch from Joshua N Pritikin.
index 4508f1ac70cf5086154989e181aacdb64ff657e1..c89b1614d7f7637790cf6e4f43bd8a28c5a013b1 100644 (file)
@@ -1,3 +1,17 @@
+Fri Dec 19 01:35:34 2003  Matthias Clasen  <maclas@gmx.de>
+
+       Fix the behaviour of insensitive actions, which was broken
+       when gtk_action_activate() was changed to pay attention to 
+       sensitivity  (#129557, Christian Persch)
+       
+       * gtk/gtkaction.h: 
+       * gtk/gtkaction.c (_gtk_action_emit_activate): New auxiliary
+       function to emit an activate signal without regard to sensitivity.
+
+       * gtk/gtkradioaction.c: 
+       * gtk/gtktoggleaction.c: Always use _gtk_action_emit_activate()
+       instead of gtk_action_activate().
+
 Thu Dec 18 19:13:12 2003  Kristian Rietveld  <kris@gtk.org>
 
        Fixes #110249, reworked patch from Joshua N Pritikin.
index 7193312bf6eeaef53230bfb120fa632ee05139fd..19730370f6d6eb1eb472936a96ce8992d3b78fb6 100644 (file)
@@ -871,6 +871,12 @@ disconnect_proxy (GtkAction *action,
   g_signal_emit (action, action_signals[DISCONNECT_PROXY], 0, proxy);
 }
 
+void
+_gtk_action_emit_activate (GtkAction *action)
+{
+    g_signal_emit (action, action_signals[ACTIVATE], 0);
+}
+
 /**
  * gtk_action_activate:
  * @action: the action object
@@ -889,7 +895,7 @@ gtk_action_activate (GtkAction *action)
   g_return_if_fail (GTK_IS_ACTION (action));
   
   if (action->private_data->sensitive)
-    g_signal_emit (action, action_signals[ACTIVATE], 0);
+    _gtk_action_emit_activate (action);
 }
 
 /**
index df0464e277153aa1d31beacffdda8a99d82d7ba8..e855052d679c4149f5a411c062e47fa523c5cc86 100644 (file)
@@ -100,6 +100,7 @@ void         gtk_action_block_activate_from    (GtkAction     *action,
                                                GtkWidget     *proxy);
 void         gtk_action_unblock_activate_from  (GtkAction     *action,
                                                GtkWidget     *proxy);
+void         _gtk_action_emit_activate         (GtkAction     *action);
 
 /* protected ... for use by action groups */
 void         gtk_action_set_accel_path         (GtkAction     *action,
@@ -107,6 +108,7 @@ void         gtk_action_set_accel_path         (GtkAction     *action,
 void         gtk_action_set_accel_group        (GtkAction     *action,
                                                GtkAccelGroup *accel_group);
 
+
 G_END_DECLS
 
 #endif  /* __GTK_ACTION_H__ */
index 38959da49e13cb1fa14069587ea62b9a3eec6fbc..e6ae027425be51a411f381428a33e0847459a3ac 100644 (file)
@@ -276,7 +276,7 @@ gtk_radio_action_activate (GtkAction *action)
 
          if (tmp_action->private_data->active && (tmp_action != toggle_action))
            {
-             gtk_action_activate (GTK_ACTION (tmp_action));
+             _gtk_action_emit_activate (GTK_ACTION (tmp_action));
              break;
            }
        }
index dd58e6199fdcd8ebc941c6bbb2ed907383048a3b..c3ac2d71f65ad7e48f109bc0b1e567104e891356 100644 (file)
@@ -301,7 +301,7 @@ gtk_toggle_action_set_active (GtkToggleAction *action,
 
   if (action->private_data->active != is_active)
     {
-      gtk_action_activate (GTK_ACTION (action));
+      _gtk_action_emit_activate (GTK_ACTION (action));
     }
 }